module.exports= (vm) => {
	const isLogin = () => {
		//如果不存在，则就跳转到登陆页面,注意类型选用redirect 或者reLaunch,因为这两个才是关闭当前页，跳转到登录页，而没有返回页面
		const token = vm.vuex_token;
		if(!token){
			//来自哪个页面，登录之后跳转到来源页
			const currentPage = getCurrentPages().pop();
			
			const {options, route} = currentPage;
			const optionsKeys = Object.keys(options); //['id']  key的一个数组
			let params = ''
			if(optionsKeys.length !== 0){ //这个用法是每次遍历一个元素为cur  pre是前边遍历返回的结果  ，第二个参数为初始化的值指定了初始的pre为? 
				params = optionsKeys.reduce((pre,cur) => {
					// return pre + cur + '=' +options[cur]+'&'
					return `${pre}${cur}=${options[cur]}&`;  //这个和上边一样
				},'?').slice(0,-1);
			}
			//缓存当前页，用于登录或者注册之后的跳转
			uni.setStorageSync('backUrl',route + params);
			
			vm.$u.toast('请先登录');
			setTimeout(() => {
				uni.$u.route({
					type: 'redirect',
					url: 'pages/auth/login/login'
				})
			}, 1000);
			return false;
		}
		return true;
	};
	const updateUser = async ()=> {
		const userInfo = await vm.$u.api.userInfo();
		vm.$u.vuex('vuex_user',userInfo);
	}
	
	
	
	
	//把上边用到的工具加入到utils这里边
	uni.$u.utils = {
		isLogin,
		updateUser
	}
}